package com.xbongbong.sso.model;

import com.xbongbong.sso.domain.entity.OauthConnectorEntity;

import java.util.List;
import java.util.Map;

/**
 * 授权连接器
 */
public interface OauthConnectorModel {

    /**
     * 插入实体
     *
     * @param entity 实体
     *
     * @return Integer MyBatis操作结果 1：成功
     */
    Long insert(OauthConnectorEntity entity);

    /**
     * 查询实体
     * @param key
     * @param corpid
     * @return
     */
    OauthConnectorEntity getByKey(Long key, String corpid);

    /**
     * 更新
     * @param entity
     * @return
     */
    Long update(OauthConnectorEntity entity);

    /**
     * 查询列表，返回值可以自己限定
     * @param param
     * @return
     */
    List<OauthConnectorEntity> findEntities(Map<String, Object> param);

    /**
     *  查询应用列表数量
     * @author wufeng
     * @date 2018/8/6 16:07
     * @param param
     * @descption
     * @return Integer
     */
    Integer getEntitiesCount(Map<String, Object> param);

    /**
     * 删除实体
     * @author wufeng
     * @date 2018/8/6 17:18
     * @param key id
     * @param corpid 公司id
     * @descption
     * @return java.lang.Integer  mybatis操作结果，1：成功
     */
    Long delete(Long key, String corpid);

    OauthConnectorEntity getByConnectorSign(String connectorSign);
}
